package models

import (
	"gorm.io/gorm"
)

type User struct {
	gorm.Model
	Mobile   string `gorm:"type:char(11);comment:手机号"`
	Password string `gorm:"type:varchar(50);comment:用户密码"`
	Status   int64  `gorm:"type:int(11);default:0;comment:用户状态: 0冻结 1正常"`
}

// 查找用户
func (u *User) GetUserInfoById() error {
	return DB.Where("mobile = ?", u.Mobile).Limit(1).Find(&u).Error
}

// 用户注册
func (u *User) Create() error {
	return DB.Create(&u).Error
}

// 用户列表
func (u *User) ListStatus() (userList []*User, err error) {
	err = DB.Where("status = ?", u.Status).Find(&userList).Error
	return
}

// 修改用户状态
func (u *User) UpdateStatus() error {
	return DB.Model(&User{}).Where("id = ?", u.ID).Update("status", u.Status).Error
}
